package com.woniuxy.cq.phrase3.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.woniuxy.cq.phrase3.entity.Project;
import com.baomidou.mybatisplus.extension.service.IService;
import com.woniuxy.cq.phrase3.entity.Sbp;
import com.woniuxy.cq.phrase3.entity.UserBm;
import com.woniuxy.cq.phrase3.entity.UserProject;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import javax.persistence.criteria.CriteriaBuilder;
import javax.xml.crypto.Data;
import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Lucas
 * @since 2020-09-07
 */
public interface IProjectService extends IService<Project> {

    /**
     * 根据工作人员新增事项
     */
    public void insertSxByUser(@Param("bm_id") Integer bmId,@Param("project_id") Integer projectId,@Param("user_id") Integer userId);

    /**
     * 根据工作人员名称查找部门id
     */
    public Integer selectBmByuserName(String userName);

    /**
     * 根据工作人员名称查找人员id
     */
    public Integer selectIdByUserName(String userName);

    /**
     * 查询部门和员工
     */
    public List<UserBm> selectAllByUserBm();

    /**
     * 查询需要受理的项目
     * @param checkStatusId 审核状态
     */
    public IPage<UserProject> acceptedItems(int pageIndex, int pageSize, Integer checkStatusId);

    /**
     * 修改项目状态
     */
    public void updateProjectStatus(@Param("project_id")Integer projectId,@Param("project_status") String projectStatus);

    public void  outAcceptRange(@Param("id") Integer projectId);

    /**
     * 修改项目状态为 资料不齐全
     */
    public void  incompleteData(@Param("id") Integer projectId);

    /**
     * 修改项目状态为 成功受理
     */
    public void  successAccept(Integer projectId,Integer sxTotal);

    IPage<Project> pageQuery2(int pageIndex, int pageSize, Integer userId, String projectPhase);
}
